An Efficient Solution to the Cache Thrashing Problem Caused by True Data Sharing
نویسندگان
چکیده
When parallel programs are executed on multiprocessors with private caches, a set of data may be repeatedly used and modiied by diierent threads. Such data sharing can often result in cache thrashing, which degrades memory performance. This paper presents and evaluates a loop restructuring method to reduce or even eliminate cache thrashing caused by true data sharing in nested parallel loops. This method uses a compiler analysis which applies linear algebra and the theory of numbers to the subscript expressions of array references. Due to this method's simplicity, it can be eeciently implemented in any parallel compiler. Experimental results show quite signiicant performance improvements over existing static and dynamic scheduling methods.
منابع مشابه
Shared Page Table : Sharing of Virtual Memory Resources ∗
Traditionally, UNIX has been weak in data sharing. By data sharing, we mean that multiple cooperative processes concurrently access and update the same set of data. As the degree of sharing (the number of cooperative processes) increases, the existing UNIX virtual memory systems run into page table thrashing, which causes a major performance bottleneck. Once page table thrashing occurs, UNIX pe...
متن کاملStudy on Last-Level Cache Management Strategy of the Chip Multi-Processor
Threads of fair and effective allocation of shared resources limited is a key problem for chip multiprocessors. As the processor core growth in the scale, multi thread for the shared resource limited system competition will become more intense, the performance of the system will also be more significant. In order to alleviate this problem, a fair and effective multi thread shared resources allo...
متن کاملAn Incentive-Aware Lightweight Secure Data Sharing Scheme for D2D Communication in 5G Cellular Networks
Due to the explosion of smart devices, data traffic over cellular networks has seen an exponential rise in recent years. This increase in mobile data traffic has caused an immediate need for offloading traffic from operators. Device-to-Device(D2D) communication is a promising solution to boost the capacity of cellular networks and alleviate the heavy burden on backhaul links. However, dir...
متن کاملCase Studies on Cache Performance and Optimization of Programs with Unit Strides
Cache performance in modern computers is important for program efficiency. A cache is thrashing if a significant amount of time is spent moving data between the memory and the cache. This paper presents two cache thrashing examples, one in scientific computing and one in image processing, both of which involve several one-dimensional arrays that are accessed sequentially, i.e., with unit stride...
متن کاملThe Evicted-Address Filter: A UniVed Mechanism to Address Both Cache Pollution and Thrashing
OU-chip main memory has long been a bottleneck for system performance. With increasing memory pressure due to multiple on-chip cores, eUective cache utilization is important. In a system with limited cache space, we would ideally like to prevent 1) cache pollution, i.e., blocks with low reuse evicting blocks with high reuse from the cache, and 2) cache thrashing, i.e., blocks with high reuse ev...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- IEEE Trans. Computers
دوره 47 شماره
صفحات -
تاریخ انتشار 1998